<?php
/*

author : zulad
date : 14/05/2012

*/

$bbcode_couran = null;

//On actualise la liste des personnes sur la page
		updatePeopleLocated($_SERVER['REQUEST_URI']);
// enregistrement membre_derniere_visite
if(isset($_SESSION['id']))
{
	$req = $pdo->prepare("UPDATE forum_membres SET membre_derniere_visite = ".time()." WHERE membre_id=:mid");
	$req->bindParam(":mid", $_SESSION["id"], PDO::PARAM_INT);
	$req->execute();
}

		
// verification de post
if(isset($_POST))
{

	// enregistrement db
	if($_REQUEST['bbcode_courant'])
	{

		// enregistrement dans forum_topic
		
		$sql = 'INSERT INTO forum_topic 
			(forum_id, topic_titre, topic_time, topic_vu, topic_forum_membre_id,topic_type) 
			VALUES (:forum_id, :topic_titre, 
				:post_time, 0,
				:topic_forum_membre_id,:topic_type)';
		
		$record = $pdo->prepare($sql);
		$record->bindValue(":forum_id",$_REQUEST['fid']);
		$record->bindValue(":topic_titre",$_REQUEST['bbcode_sujet']);
		$record->bindValue(":post_time",time());
		$record->bindValue(":topic_forum_membre_id",$_SESSION['id']);
		$record->bindValue(":topic_type",$_REQUEST['topic_type']);
		
		
		$record->execute();
		$lastTopicId = $pdo->lastInsertId();
		
		// enregistrement dans forum_post
		
		$sql = 'INSERT INTO forum_post 
				(post_texte, post_time, topic_id, post_forum_id,
					forum_membre_id)
				VALUES (:post_texte, 
					:topic_time, 
					:topic_id, :post_forum_id,
					:forum_membre_id)';
		
		$record = $pdo->prepare($sql);
		$record->bindValue(":post_texte",$_REQUEST['bbcode_courant']);
		$record->bindValue(":topic_id",$lastTopicId);
		$record->bindValue(":topic_time",mktime());
		$record->bindValue(":post_forum_id",$_REQUEST['fid']);
		$record->bindValue(":forum_membre_id",$_SESSION['id']);
		
		$record->execute();
		
		$lastPostId = $pdo->lastInsertId();
		
		// update de forum_topic avec les donnees enregistrées
		
		$sql = 'UPDATE forum_topic 
				SET topic_last_post=:topic_last_post, topic_first_post=:topic_first_post
				WHERE topic_id=:topic_id';
		
		$record = $pdo->prepare($sql);
		$record->bindValue(":topic_last_post",$lastPostId);
		$record->bindValue(":topic_first_post",$lastPostId);
		$record->bindValue(":topic_id",$lastTopicId);
		
		$record->execute();
		
		//
		$record->closeCursor();
		
		redirect('Votre message a été posté !', getLienModule('forum', 'voirmessage')."?num=1&tid=".$lastTopicId);
	}

}

if(isset($_GET["fid"]))
{
	
	$itemCount = GetValueFromQuery('SELECT count(*) as value FROM forum_topic WHERE forum_id='.$_GET['fid']);
	//$pager = GetPager(25,$itemCount,$_GET['num'], 'voirtopic', $_GET['fid']);
	
	// là on mettra un tableau pour afficher les annonces que les admins et modo ont crée avec le formulaire et dans le formulaire on mettra en bas du texterea 1 case a coché pour dire annonceet un autre pour dire topic
	// et biensur les messages seront déverouiller et fermet donc impossible de posté une réponse pour les membes sauf si je le decoche pour permettre aux membre de posté une réponse ds une annonce
	// ça sera bien dans l'index on pourrais mettre une rubrique et une categorie seuil les admins et modos et nuser pourront voir cette rubrique afiin quon puisse poster un message pour parler entre admin , modo 
	$pager = genPagination($itemCount,$_GET['num'],'voirtopic',$nextPrev=true,$_GET['fid']);
	
	// prendre les forum_topic = fid
	$sql = "SELECT forum_name,forum_cat_id FROM forum_forum WHERE forum_id=".$_REQUEST['fid'];

	try{
	$t = $pdo->query($sql);
	$titre = $t->fetch();
	$req = $pdo->prepare("SELECT * FROM forum_categorie WHERE cat_id=?");
		$req->execute(array($titre["forum_cat_id"]));
		$rs = $req->fetch();			
		if((isset($_SESSION['id']) && $rs['cat_level'] > id2level($_SESSION['id'])) || (!isset($_SESSION['id']) && $rs['cat_level'] != 1))
			redirect("Vous n'avez pas les droits requis pour lire le contenu");
		
     			// ici on affiche un texte en hut de la page pour le changer c'esty dans modules/message_haut.php
echo '' . Forum_voirtopic . '<br />';

		include "./modules/forum/topic/bouton_haut.php";

			include "./modules/forum/topic/message.php";

	
		
		/*Nombre de visiteur */
		//On charge les infos des membres sur cette page
		$info = getPeopleLocated($_SERVER['REQUEST_URI']);

	echo '<div class="cadre_visible contenu"><div class="titre">Informations et options du forum.</div>
	      <br />
		  Il y a ('.$info['countPeople'].' personne(s) sur cette page dont '.$info['countPeopleMember'].' membre(s) et '.$info['countPeopleVisitor'].' visiteur(s))'.$info['memberList'].'
		  </div>';
		
		include "./modules/forum/topic/bouton_bas.php";
 	include "./modules/forum/legende/voirtopic.php";		
	} catch(Exception $ex) {
		header("index.php");	
	}	

}else{

	setPageTitle("Forum");
	display_info("Une erreur interne est survenue",ERROR);
}

?>